IComponent Class Reference
[VST 3 Interfaces to be implemented by Plug-inVST 3 Interfaces defined in version 3.0.0]

Component Base Interface. More...

#include <ivstcomponent.h>

Inheritance diagram for IComponent:
Inheritance graph
[legend]

Public Member Functions

virtual tresult getControllerClassId (TUID classId)=0
 Called before initializing the component to get information about the controller class.
virtual tresult setIoMode (IoMode mode)=0
 Called before 'initialize' to set the component usage (optional).
virtual int32 getBusCount (MediaType type, BusDirection dir)=0
 Called after the Plug-in is initialized.
virtual tresult getBusInfo (MediaType type, BusDirection dir, int32 index, BusInfo &bus)=0
 Called after the Plug-in is initialized.
virtual tresult getRoutingInfo (RoutingInfo &inInfo, RoutingInfo &outInfo)=0
 Retrieves routing information (to be implemented when more than one regular input or output bus exists).
virtual tresult activateBus (MediaType type, BusDirection dir, int32 index, TBool state)=0
 Called upon (de-)activating a bus in the host application.
virtual tresult setActive (TBool state)=0
 Activates / deactivates the component.
virtual tresult setState (IBStream *state)=0
 Sets complete state of component.
virtual tresult getState (IBStream *state)=0
 Retrieves complete state of component.

Static Public Attributes

static const FUID iid

Detailed Description

Component Base Interface.

This is the basic interface for a VST component and must always be supported. It contains the common parts of any kind of processing class. The parts that are specific to a media type are defined in a seperate interface. An implementation component must provide both the specific interface and IComponent.


Member Function Documentation

virtual tresult getControllerClassId ( TUID  classId  )  [pure virtual]

Called before initializing the component to get information about the controller class.

Implemented in Component, and SingleComponentEffect.

virtual tresult setIoMode ( IoMode  mode  )  [pure virtual]

Called before 'initialize' to set the component usage (optional).

See IoModes

Implemented in Component, and SingleComponentEffect.

virtual int32 getBusCount ( MediaType  type,
BusDirection  dir 
) [pure virtual]

Called after the Plug-in is initialized.

See MediaTypes, BusDirections

Implemented in Component, and SingleComponentEffect.

virtual tresult getBusInfo ( MediaType  type,
BusDirection  dir,
int32  index,
BusInfo bus 
) [pure virtual]

Called after the Plug-in is initialized.

See MediaTypes, BusDirections

Implemented in Component, and SingleComponentEffect.

virtual tresult getRoutingInfo ( RoutingInfo inInfo,
RoutingInfo outInfo 
) [pure virtual]

Retrieves routing information (to be implemented when more than one regular input or output bus exists).

The inInfo always refers to an input bus while the returned outInfo must refer to an output bus!

Implemented in Component, and SingleComponentEffect.

virtual tresult activateBus ( MediaType  type,
BusDirection  dir,
int32  index,
TBool  state 
) [pure virtual]

Called upon (de-)activating a bus in the host application.

The Plug-in should only processed an activated bus, the host could provide less see AudioBusBuffers in the process call (see IAudioProcessor::process) if last buses are not activated

Implemented in Component, and SingleComponentEffect.

virtual tresult setActive ( TBool  state  )  [pure virtual]

Activates / deactivates the component.

Implemented in Component, and SingleComponentEffect.

virtual tresult setState ( IBStream state  )  [pure virtual]

Sets complete state of component.

Implemented in Component, and SingleComponentEffect.

virtual tresult getState ( IBStream state  )  [pure virtual]

Retrieves complete state of component.

Implemented in Component, and SingleComponentEffect.


Field Documentation

const FUID iid [static]

Reimplemented from IPluginBase.

 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Defines
Empty

Copyright ©2013 Steinberg Media Technologies GmbH. All Rights Reserved.